<?php

if (!defined('BASEPATH'))
    exit('No direct script access allowed');

class Confmotor extends CI_Controller {

    private $establecimiento;

    public function __construct() {
        parent::__construct();
        session_start();
        $this->estaLogueado();
        $this->verificarPermiso();
        $this->esAdministrador();
        $this->establecimiento = $_SESSION["establecimiento"]["id_establecimiento"];
        $this->load->model('establecimientom');
        $this->load->model('establecimiento_x_sistema_pagosm');
    }

    public function index() {
        $data = array();
        $this->loadData($data);
        $this->load->view('header', $data);
        $this->load->view('motorV');
        $this->load->view('footer');
    }

    private function loadData(&$data) {
        $data['tab'] = "motor";
        $id_establecimiento = $_SESSION["establecimiento"]["id_establecimiento"];
        $data['moneda'] = $_SESSION["establecimiento"]["moneda"];
        $data['info'] = $this->establecimientom->obtenerDatos("*", $this->establecimiento);
        $sistemaPagos = $this->establecimiento_x_sistema_pagosm->obtenerDatos("*", "where id_establecimiento='$id_establecimiento'");
        if (sizeof($sistemaPagos) == 1) {
            $data["infoPagos"] = $sistemaPagos;
            $data["estatusPagos"] = "on";
        } else {
            $data["estatusPagos"] = "off";
        }
    }

    public function guardar() {
        $this->escapar($_POST);

        if (!isset($_POST["deposito"]) || !isset($_POST["tipoDeposito"]) || !isset($_POST["valorFijo"]) || !isset($_POST["valorPorcentaje"]) || !isset($_POST["idComercio"]) || !isset($_POST["apiKey"])) {
            $this->mensaje("Datos inválidos, por favor inténtalo nuevamente", "advertencia", "confmotor");
        }
        $_POST["idComercio"] = trim($_POST["idComercio"]);
        $_POST["apiKey"] = trim($_POST["apiKey"]);

        $id_establecimiento = $_SESSION["establecimiento"]["id_establecimiento"];
        if ($_POST["deposito"] == "si") {
            if ($_POST["tipoDeposito"] == "fijo") {
                $valor = $_POST["valorFijo"];
            } else {
                $valor = $_POST["valorPorcentaje"];
            }
            $count = $this->establecimiento_x_sistema_pagosm->obtenerDatos("*", "where id_establecimiento='$id_establecimiento'");
            if (sizeof($count) == 0) {
                $this->establecimiento_x_sistema_pagosm->crear($id_establecimiento, $_POST["tipoDeposito"], $valor, $_POST["idComercio"], $_POST["apiKey"]);
            } else {
                $this->establecimiento_x_sistema_pagosm->actualizar($id_establecimiento, $_POST["tipoDeposito"], $valor, $_POST["idComercio"], $_POST["apiKey"]);
            }
        } else {
            $this->establecimiento_x_sistema_pagosm->eliminar($id_establecimiento);
        }

        $this->establecimientom->actualizarFromMotor($this->establecimiento, $_POST["politica_cancelacion"], $_POST["descripcion_impuestos_cargos"], $_POST["check_in"], $_POST["check_out"], $_POST["link_facebook"]);
        $this->mensaje("Datos actualizados exitosamente", "exito", "confmotor");
    }

    private function verificarPermiso() {
        $this->load->model('permisom');
        $permisos = $this->permisom->obtenerPermisos($_SESSION["establecimiento"]["id_establecimiento"]);
        if (sizeof($permisos) == 0 || $permisos[0]->motor == 0) {
            header("location: " . base_url() . "getservice?s=motor");
            exit();
        }
    }

}